NSSavePanel *panel;
NSWindow *parent;
+ NSWindow *key_window;
gboolean skip_response;
gboolean save;
gboolean folder;
self->mode_data = NULL;
+ if (data->parent)
+ {
+ [data->panel orderOut:nil];
+ [data->parent makeKeyAndOrderFront:nil];
+ }
+ else
+ {
+ [data->key_window makeKeyAndOrderFront:nil];
+ }
+
if (!data->skip_response)
{
g_slist_free_full (self->custom_files, g_object_unref);
if (data->parent != NULL && data->modal)
{
- [data->panel setLevel:NSModalPanelWindowLevel];
[data->panel beginSheetModalForWindow:data->parent completionHandler:handler];
}
else
{
- [data->panel setLevel:NSModalPanelWindowLevel];
[data->panel beginWithCompletionHandler:handler];
}
data->current_name = g_strdup (self->current_name);
}
+ data->key_window = [NSApp keyWindow];
+
return filechooser_quartz_launch(data);
}
[data->panel orderBack:nil];
[data->panel close];
+
if (data->parent)
- [data->parent orderFront:nil];
+ {
+ [data->parent makeKeyAndOrderFront:nil];
+ }
+ else
+ {
+ [data->key_window makeKeyAndOrderFront:nil];
+ }
data->panel = NULL;
}